//-----------------------------------------------------------------------bl-
//--------------------------------------------------------------------------
//-----------------------------------------------------------------------el-

#ifndef MYJDR_PERSONNAGE_H
#define MYJDR_PERSONNAGE_H


namespace Myjdr
{

   class Personnage
   {
       public:
         Personnage();
         ~Personnage();

         /*! upgrade or downgrade force*/
         void add_to_force(unsigned int add);

         /*! upgrade or downgrade endurance*/
         void add_to_endurance(unsigned int add);

         /*! upgrade or downgrade psyche*/
         void add_to_psyche(unsigned int add);

         /*! upgrade or downgrade mana*/
         void add_to_mana(unsigned int add);

         /*! upgrade or downgrade agilite*/
         void add_to_agilite(unsigned int add);

         /*! upgrade or downgrade concentration*/
         void add_to_concentration(unsigned int add);

         /*! upgrade or downgrade vitesse*/
         void add_to_vitesse(unsigned int add);

         /* c(t) */
         float concentration(float t) const;

         /* c */
         unsigned int concentration() const;


       private:
        unsigned int _force;
        unsigned int _endurance;
        unsigned int _psyche;
        unsigned int _mana;
        unsigned int _agilite;
        unsigned int _concentration;
        unsigned int _vitesse;
        const unsigned int _max_value;
   }

} //end of namespace Myjdr

#endif
